const sequelize = require('../app/database')
const { DataTypes } = require('sequelize')


const User = sequelize.define('user', {
  // 在这里定义模型属性
  userId: {
    type: DataTypes.CHAR,
    allowNull: false,
    primaryKey: true,
    comment: 'primary key'
  },
  password: {
    type: DataTypes.CHAR
    // unique: 'uk_password'
    // defaultValue: null
    // field: 'password'
    // autoIncrement: true
    // allowNull 默认为 true
  },
  nickname: {
    type: DataTypes.CHAR
  },
  phone: {
    type: DataTypes.CHAR
  },
  grade: {
    type: DataTypes.CHAR
  },
  goal: {
    type: DataTypes.CHAR
  },
  headUrl: {
    type: DataTypes.CHAR
  },
  isInnerMember: {
    type: DataTypes.TINYINT.UNSIGNED,
    defaultValue: 2,
    comment: '1内部成员 2外部成员',
    validate: {
      isIn: [[1, 2]]
    },
    allowNull: false
  },
  userStatus: {
    type: DataTypes.INTEGER.UNSIGNED,
    comment: '1禁用 2启用',
    validate: {
      isIn: [[1, 2]]
    },
    allowNull: false
  }
}, {
  // 这是其他模型参数
  sequelize, // 我们需要传递连接实例
  modelName: 'user' // 我们需要选择模型名称
})

// sequelize.sync({ force: true }).then(() => {
//     console.log("所有模型均已成功同步====.");
// })

module.exports = User